package com.shycloud.mido.music.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.shycloud.mido.music.domain.MisMusicCollection;
import com.shycloud.mido.music.dto.MisMusicCollectionAddDTO;
import com.shycloud.mido.music.vo.MyCollectionVO;

/**
 * 曲集模块 service
 *
 * @author nianhua.jiang
 * @date 2020/5/6 15:10
 */
public interface MisMusicCollectionService extends IService<MisMusicCollection> {

	/**
	 * 分页获取曲集列表（后台管理用）
	 *
	 * @param page
	 * @param libraryId
	 * @param CollectionName
	 * @return com.baomidou.mybatisplus.core.metadata.IPage
	 * @author nianhua.jiang
	 * @date 2020/5/6 15:12
	 */
	IPage getMusicConllection(Page page, Integer libraryId, String CollectionName,Integer collectionId, String collectionStatus);

	/**
	 * 分页获取曲集列表（移动端用）
	 *
	 * @param page
	 * @param libraryId
	 * @return com.baomidou.mybatisplus.core.metadata.IPage
	 * @author nianhua.jiang
	 * @date 2020/7/30 16:22
	 */
	IPage getMusicConllectionMobile(Page page, Integer libraryId, Integer chargeType);

	/**
	 * 添加曲集
	 *
	 * @param misMusicCollection 添加曲集DTO
	 * @return boolean
	 * @author nianhua.jiang
	 * @date 2020/5/6 17:30
	 */
	boolean saveCollection(MisMusicCollectionAddDTO misMusicCollection);

	/**
	 * 删除曲集
	 *
	 * @param collectionId
	 * @return int
	 * @author nianhua.jiang
	 * @date 2020/5/7 13:11
	 */
	int deleteMusicConllection(Integer collectionId);

	/**
	 * 获取我收藏的有声图书
	 *
	 * @param page
	 * @return com.baomidou.mybatisplus.core.metadata.IPage<com.shycloud.mido.music.vo.MyCollectionVO>
	 * @author nianhua.jiang
	 * @date 2020/6/16 16:32
	 */
	IPage<MyCollectionVO> getMySoundBook(Page page);


	MisMusicCollection getValidCollectionById(Integer collectionId);


}
